#pragma once

#include "IMesh.h"
#include "IShader.h"
#include "PhysicObject.h"

class IObject
{
public:
	IObject(IMesh* Mesh, IShader* Shader,PhysicObject* phy);
	~IObject(void);		
	virtual void Update(DWORD elapsedTime,Camera* camera);
	virtual void Draw(DWORD elapsedTime,Camera* camera);	
	IMesh* GetMesh() { return mesh; }
	IShader* GetShader() {return shader; }		
	PhysicObject* GetPhysicObject() {return phyObje;}


private:	
	PhysicObject* phyObje;
	IMesh* mesh;
	IShader* shader;
	RenderableObject obj;	
};
